﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WCS.Infrastructure.Attr;
using WCS.Infrastructure.EFCore;
using WCS.Service.EFCore;

namespace WCS.Infrastructure.IOC
{
    [Provider, Inject]
    public class PaymentIOC
    {
        public readonly SysUserEFCore _sysUserEFCore;
        public readonly SysRoleEFCore _sysRoleEFCore;
        public readonly SysUserRoleEFCore _sysUserRoleEFCore;
        public readonly SysUserMiniProgramEFCore _sysUserMiniProgramEFCore;

        public readonly MerchantEFCore _merchantEFCore;
        public readonly StoreEFCore _storeEFCore;
        public readonly PaymentCodeEFCore _paymentCodeEFCore;
        public readonly DividedAgreementEFCore _dividedAgreementEFCore;
        public readonly DividedAgreementDetailEFCore _dividedAgreementDetailEFCore;
        public readonly OrderEFCore _orderEFCore;
        public readonly DividedRecordEFCore _dividedRecordEFCore;
        public readonly DividedRecordDetailEFCore _dividedRecordDetailEFCore;
        public readonly SettlementRecordEFCore _settlementRecordEFCore;
        public readonly ReportStatisticEFCore _reportStatisticEFCore;
        public readonly AccountTransactionEFCore _accountTransactionEFCore;
        public readonly WithdrawalRecordEFCore _withdrawalRecordEFCore;
        public readonly PaymentPlatformEFCore _paymentPlatformEFCore;
        public readonly EpaylinksSplitRecordEFCore _epaylinksSplitRecordEFCore;
        public readonly OrderRefundRecordEFCore _orderRefundRecordEFCore;
        public PaymentIOC(SysUserEFCore sysUserEFCore , SysUserRoleEFCore sysUserRoleEFCore ,MerchantEFCore merchantEFCore, StoreEFCore storeEFCore, 
            PaymentCodeEFCore paymentCodeEFCore, SysUserMiniProgramEFCore sysUserMiniProgramEFCore,
            DividedAgreementEFCore dividedAgreementEFCore, DividedAgreementDetailEFCore dividedAgreementDetailEFCore, OrderEFCore orderEFCore,
            DividedRecordEFCore dividedRecordEFCore, DividedRecordDetailEFCore dividedRecordDetailEFCore,SettlementRecordEFCore settlementRecordEFCore,
            ReportStatisticEFCore reportStatisticEFCore, AccountTransactionEFCore accountTransactionEFCore, WithdrawalRecordEFCore withdrawalRecordEFCore, 
            PaymentPlatformEFCore paymentPlatformEFCore, EpaylinksSplitRecordEFCore epaylinksSplitRecordEFCore, OrderRefundRecordEFCore orderRefundRecordEFCore, SysRoleEFCore sysRoleEFCore
            )
        {
            _sysUserEFCore = sysUserEFCore;
            _sysUserRoleEFCore = sysUserRoleEFCore;
            _sysUserMiniProgramEFCore = sysUserMiniProgramEFCore;
            _merchantEFCore = merchantEFCore;
            _storeEFCore = storeEFCore;
            _paymentCodeEFCore = paymentCodeEFCore;
            _dividedAgreementEFCore = dividedAgreementEFCore;
            _dividedAgreementDetailEFCore = dividedAgreementDetailEFCore;
            _orderEFCore = orderEFCore;
            _dividedRecordEFCore = dividedRecordEFCore;
            _dividedRecordDetailEFCore = dividedRecordDetailEFCore;
            _settlementRecordEFCore = settlementRecordEFCore;
            _reportStatisticEFCore = reportStatisticEFCore;
            _withdrawalRecordEFCore = withdrawalRecordEFCore;
            _accountTransactionEFCore = accountTransactionEFCore;
            _paymentPlatformEFCore = paymentPlatformEFCore;
            _epaylinksSplitRecordEFCore = epaylinksSplitRecordEFCore;
            _orderRefundRecordEFCore = orderRefundRecordEFCore;
            _sysRoleEFCore = sysRoleEFCore;
        }
    }
}
